using System;
using System.Reflection;
//using PostSharp.Extensibility;
//using PostSharp.Laos;

namespace CosyTrade.Data
{

    //[MulticastAttributeUsage(MulticastTargets.Class | MulticastTargets.Struct), Serializable]
    public sealed class PropertyChangedNotifyAttribute :Attribute//: CompoundAspect
    {
        //public override void ProvideAspects(object element, LaosReflectionAspectCollection collection)
        //{
        //    Type targetType = (Type)element;
        //    foreach (PropertyInfo property in targetType.GetProperties())
        //    {
        //        if (IsDefined(property, typeof(DisabledPropertyChangedNotifyAttribute))) continue;
        //        if (property.DeclaringType == targetType && property.CanWrite)
        //        {
        //            MethodInfo method = property.GetSetMethod();
        //            if (!method.IsStatic)
        //            {
        //                collection.AddAspect(method, new PropertyWriteIntercept(property.Name));
        //            }
        //        }
        //    }
        //}
    }
}